/*
 * FileName:       wsse.h
 * Author:         luny  Version: 1.0  Date: 2013-6-14
 * Description:    onvif wsse
 * Version:        
 * Function List:  
 *                 1.
 * History:        
 *     <author>   <time>    <version >   <desc>
 */

#include "soap_common.h"


#define SOAP_TYPE__wsu__Timestamp (122)
/* wsu:Timestamp */
struct _wsu__Timestamp
{
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *Created;	/* optional element of type xsd:string */
	char *Expires;	/* optional element of type xsd:string */
};
typedef struct _wsu__Timestamp _wsu__Timestamp;

#define SOAP_TYPE__wsse__UsernameToken (124)
/* wsse:UsernameToken */
struct _wsse__UsernameToken
{
	char *Username;	/* optional element of type xsd:string */
	struct _wsse__Password *Password;	/* optional element of type wsse:Password */
	char *Nonce;	/* optional element of type xsd:string */
	char *wsu__Created;	/* optional element of type xsd:string */
	char *wsu__Id;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__UsernameToken _wsse__UsernameToken;

#define SOAP_TYPE__wsse__Password (125)
/* Primitive wsse:Password schema type: */
struct _wsse__Password
{
	char *__item;
	char *Type;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__Password _wsse__Password;

#define SOAP_TYPE__wsse__BinarySecurityToken (127)
/* Primitive wsse:BinarySecurityToken schema type: */
struct _wsse__BinarySecurityToken
{
	char *__item;
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *ValueType;	/* optional attribute of type xsd:string */
	char *EncodingType;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__BinarySecurityToken _wsse__BinarySecurityToken;

#define SOAP_TYPE__wsse__Reference (128)
/* wsse:Reference */
struct _wsse__Reference
{
	char *URI;	/* optional attribute of type xsd:string */
	char *ValueType;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__Reference _wsse__Reference;

#define SOAP_TYPE__wsse__Embedded (129)
/* wsse:Embedded */
struct _wsse__Embedded
{
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *ValueType;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__Embedded _wsse__Embedded;

#define SOAP_TYPE__wsse__KeyIdentifier (130)
/* Primitive wsse:KeyIdentifier schema type: */
struct _wsse__KeyIdentifier
{
	char *__item;
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *ValueType;	/* optional attribute of type xsd:string */
	char *EncodingType;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__KeyIdentifier _wsse__KeyIdentifier;

#define SOAP_TYPE__wsse__SecurityTokenReference (131)
/* wsse:SecurityTokenReference */
struct _wsse__SecurityTokenReference
{
	struct _wsse__Reference *Reference;	/* optional element of type wsse:Reference */
	struct _wsse__KeyIdentifier *KeyIdentifier;	/* optional element of type wsse:KeyIdentifier */
	struct _wsse__Embedded *Embedded;	/* optional element of type wsse:Embedded */
	struct ds__X509DataType *ds__X509Data;	/* optional element of type ds:X509DataType */
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *wsc__Instance;	/* optional attribute of type xsd:string */
	char *Usage;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__SecurityTokenReference _wsse__SecurityTokenReference;

#define SOAP_TYPE_ds__X509DataType (135)
/* ds:X509DataType */
struct ds__X509DataType
{
	struct ds__X509IssuerSerialType *X509IssuerSerial;	/* optional element of type ds:X509IssuerSerialType */
	char *X509SKI;	/* optional element of type xsd:string */
	char *X509SubjectName;	/* optional element of type xsd:string */
	char *X509Certificate;	/* optional element of type xsd:string */
	char *X509CRL;	/* optional element of type xsd:string */
};
typedef struct ds__X509DataType ds__X509DataType;

#define SOAP_TYPE_ds__SignatureType (137)
/* ds:SignatureType */
struct ds__SignatureType
{
	struct ds__SignedInfoType *SignedInfo;	/* optional element of type ds:SignedInfoType */
	char *SignatureValue;	/* optional element of type xsd:string */
	struct ds__KeyInfoType *KeyInfo;	/* optional element of type ds:KeyInfoType */
	char *Id;	/* optional attribute of type xsd:string */
};
typedef struct ds__SignatureType ds__SignatureType;

#define SOAP_TYPE_ds__SignedInfoType (138)
/* ds:SignedInfoType */
struct ds__SignedInfoType
{
	struct ds__CanonicalizationMethodType *CanonicalizationMethod;	/* required element of type ds:CanonicalizationMethodType */
	struct ds__SignatureMethodType *SignatureMethod;	/* required element of type ds:SignatureMethodType */
	int __sizeReference;	/* sequence of elements <Reference> */
	struct ds__ReferenceType **Reference;	/* required element of type ds:ReferenceType */
	char *Id;	/* optional attribute of type xsd:string */
};
typedef struct ds__SignedInfoType ds__SignedInfoType;


#define SOAP_TYPE_ds__CanonicalizationMethodType (143)
/* ds:CanonicalizationMethodType */
struct ds__CanonicalizationMethodType
{
	char *Algorithm;	/* required attribute of type xsd:string */
	struct _c14n__InclusiveNamespaces *c14n__InclusiveNamespaces;	/* optional element of type c14n:InclusiveNamespaces */
};
typedef struct ds__CanonicalizationMethodType ds__CanonicalizationMethodType;

#define SOAP_TYPE_ds__SignatureMethodType (144)
/* ds:SignatureMethodType */
struct ds__SignatureMethodType
{
	int *HMACOutputLength;	/* optional element of type xsd:int */
	char *Algorithm;	/* required attribute of type xsd:string */
};
typedef struct ds__SignatureMethodType ds__SignatureMethodType;

#define SOAP_TYPE_ds__ReferenceType (145)
/* ds:ReferenceType */
struct ds__ReferenceType
{
	struct ds__TransformsType *Transforms;	/* optional element of type ds:TransformsType */
	struct ds__DigestMethodType *DigestMethod;	/* required element of type ds:DigestMethodType */
	char *DigestValue;	/* required element of type xsd:string */
	char *Id;	/* optional attribute of type xsd:string */
	char *URI;	/* optional attribute of type xsd:string */
	char *Type;	/* optional attribute of type xsd:string */
};
typedef struct ds__ReferenceType ds__ReferenceType;

#define SOAP_TYPE__ds__Transform (150)

#define soap_default__ds__Transform(soap, a) soap_default_ds__TransformType(soap, a)


#define soap_serialize__ds__Transform soap_serialize_ds__TransformType


#define soap_out__ds__Transform soap_out_ds__TransformType


#define soap_in__ds__Transform soap_in_ds__TransformType


#define soap_put__ds__Transform soap_put_ds__TransformType


#define soap_get__ds__Transform soap_get_ds__TransformType


#define SOAP_TYPE_ds__DigestMethodType (151)
/* ds:DigestMethodType */
struct ds__DigestMethodType
{
	char *Algorithm;	/* required attribute of type xsd:string */
};
typedef struct ds__DigestMethodType ds__DigestMethodType;

#define SOAP_TYPE_ds__KeyValueType (152)
/* ds:KeyValueType */
struct ds__KeyValueType
{
	struct ds__DSAKeyValueType *DSAKeyValue;	/* optional element of type ds:DSAKeyValueType */
	struct ds__RSAKeyValueType *RSAKeyValue;	/* optional element of type ds:RSAKeyValueType */
};
typedef struct ds__KeyValueType ds__KeyValueType;

#define SOAP_TYPE_ds__DSAKeyValueType (159)
/* ds:DSAKeyValueType */
struct ds__DSAKeyValueType
{
	char *G;	/* optional element of type xsd:string */
	char *Y;	/* required element of type xsd:string */
	char *J;	/* optional element of type xsd:string */
	char *P;	/* required element of type xsd:string */
	char *Q;	/* required element of type xsd:string */
	char *Seed;	/* required element of type xsd:string */
	char *PgenCounter;	/* required element of type xsd:string */
};
typedef struct ds__DSAKeyValueType ds__DSAKeyValueType;

#define SOAP_TYPE_ds__RSAKeyValueType (160)
/* ds:RSAKeyValueType */
struct ds__RSAKeyValueType
{
	char *Modulus;	/* required element of type xsd:string */
	char *Exponent;	/* required element of type xsd:string */
};
typedef struct ds__RSAKeyValueType ds__RSAKeyValueType;


#define SOAP_TYPE_ds__KeyInfoType (140)
/* ds:KeyInfoType */
struct ds__KeyInfoType
{
	char *KeyName;	/* optional element of type xsd:string */
	struct ds__KeyValueType *KeyValue;	/* optional element of type ds:KeyValueType */
	struct ds__RetrievalMethodType *RetrievalMethod;	/* optional element of type ds:RetrievalMethodType */
	struct ds__X509DataType *X509Data;	/* optional element of type ds:X509DataType */
	struct _wsse__SecurityTokenReference *wsse__SecurityTokenReference;	/* optional element of type wsse:SecurityTokenReference */
	char *Id;	/* optional attribute of type xsd:string */
};
typedef struct ds__KeyInfoType ds__KeyInfoType;

#define SOAP_TYPE_ds__TransformsType (146)
/* ds:TransformsType */
struct ds__TransformsType
{
	int __sizeTransform;	/* sequence of elements <Transform> */
	struct ds__TransformType *Transform;	/* required element of type ds:TransformType */
};
typedef struct ds__TransformsType ds__TransformsType;

#define SOAP_TYPE__c14n__InclusiveNamespaces (147)
/* c14n:InclusiveNamespaces */
struct _c14n__InclusiveNamespaces
{
	char *PrefixList;	/* optional attribute of type xsd:string */
};
typedef struct _c14n__InclusiveNamespaces _c14n__InclusiveNamespaces;

#define SOAP_TYPE_ds__TransformType (148)
/* ds:TransformType */
struct ds__TransformType
{
	struct _c14n__InclusiveNamespaces *c14n__InclusiveNamespaces;	/* optional element of type c14n:InclusiveNamespaces */
	char *__any;
	char *Algorithm;	/* optional attribute of type xsd:string */
};
typedef struct ds__TransformType ds__TransformType;

#define SOAP_TYPE_ds__RetrievalMethodType (154)
/* ds:RetrievalMethodType */
struct ds__RetrievalMethodType
{
	struct ds__TransformsType *Transforms;	/* optional element of type ds:TransformsType */
	char *URI;	/* optional attribute of type xsd:string */
	char *Type;	/* optional attribute of type xsd:string */
};
typedef struct ds__RetrievalMethodType ds__RetrievalMethodType;


#define SOAP_TYPE__ds__KeyInfo (157)

#define soap_default__ds__KeyInfo(soap, a) soap_default_ds__KeyInfoType(soap, a)


#define soap_serialize__ds__KeyInfo soap_serialize_ds__KeyInfoType


#define soap_out__ds__KeyInfo soap_out_ds__KeyInfoType


#define soap_in__ds__KeyInfo soap_in_ds__KeyInfoType


#define soap_put__ds__KeyInfo soap_put_ds__KeyInfoType


#define soap_get__ds__KeyInfo soap_get_ds__KeyInfoType


#define SOAP_TYPE_ds__X509IssuerSerialType (158)
/* ds:X509IssuerSerialType */
struct ds__X509IssuerSerialType
{
	char *X509IssuerName;	/* required element of type xsd:string */
	char *X509SerialNumber;	/* required element of type xsd:string */
};
typedef struct ds__X509IssuerSerialType ds__X509IssuerSerialType;

#define SOAP_TYPE_xenc__EncryptionMethodType (172)
/* xenc:EncryptionMethodType */
struct xenc__EncryptionMethodType
{
	int *KeySize;	/* optional element of type xsd:int */
	char *OAEPparams;	/* optional element of type xsd:string */
	char *Algorithm;	/* required attribute of type xsd:string */
	struct ds__DigestMethodType *ds__DigestMethod;	/* optional element of type ds:DigestMethodType */
	char *__mixed;
};
typedef struct xenc__EncryptionMethodType xenc__EncryptionMethodType;

#define SOAP_TYPE_xenc__CipherDataType (173)
/* xenc:CipherDataType */
struct xenc__CipherDataType
{
	char *CipherValue;	/* optional element of type xsd:string */
	struct xenc__CipherReferenceType *CipherReference;	/* optional element of type xenc:CipherReferenceType */
};
typedef struct xenc__CipherDataType xenc__CipherDataType;

#define SOAP_TYPE_xenc__CipherReferenceType (174)
/* xenc:CipherReferenceType */
struct xenc__CipherReferenceType
{
	struct xenc__TransformsType *Transforms;	/* optional element of type xenc:TransformsType */
	char *URI;	/* required attribute of type xsd:string */
};
typedef struct xenc__CipherReferenceType xenc__CipherReferenceType;

#define SOAP_TYPE_xenc__TransformsType (175)
/* xenc:TransformsType */
struct xenc__TransformsType
{
	struct ds__TransformType ds__Transform;	/* required element of type ds:Transform */
};
typedef struct xenc__TransformsType xenc__TransformsType;


#define SOAP_TYPE_xenc__EncryptedDataType (176)
/* xenc:EncryptedDataType */
struct xenc__EncryptedDataType
{
	struct xenc__EncryptionMethodType *EncryptionMethod;	/* optional element of type xenc:EncryptionMethodType */
	struct ds__KeyInfoType *ds__KeyInfo;	/* optional element of type ds:KeyInfo */
	struct xenc__CipherDataType *CipherData;	/* required element of type xenc:CipherDataType */
	struct xenc__EncryptionPropertiesType *EncryptionProperties;	/* optional element of type xenc:EncryptionPropertiesType */
	char *Id;	/* optional attribute of type xsd:string */
	char *Type;	/* optional attribute of type xsd:string */
	char *MimeType;	/* optional attribute of type xsd:string */
	char *Encoding;	/* optional attribute of type xsd:string */
};
typedef struct xenc__EncryptedDataType xenc__EncryptedDataType;

#define SOAP_TYPE_xenc__EncryptedKeyType (177)
/* xenc:EncryptedKeyType */
struct xenc__EncryptedKeyType
{
	struct xenc__EncryptionMethodType *EncryptionMethod;	/* optional element of type xenc:EncryptionMethodType */
	struct ds__KeyInfoType *ds__KeyInfo;	/* optional element of type ds:KeyInfo */
	struct xenc__CipherDataType *CipherData;	/* required element of type xenc:CipherDataType */
	struct xenc__EncryptionPropertiesType *EncryptionProperties;	/* optional element of type xenc:EncryptionPropertiesType */
	char *Id;	/* optional attribute of type xsd:string */
	char *Type;	/* optional attribute of type xsd:string */
	char *MimeType;	/* optional attribute of type xsd:string */
	char *Encoding;	/* optional attribute of type xsd:string */
	struct _xenc__ReferenceList *ReferenceList;	/* optional element of type xenc:ReferenceList */
	char *CarriedKeyName;	/* optional element of type xsd:string */
	char *Recipient;	/* optional attribute of type xsd:string */
};
typedef struct xenc__EncryptedKeyType xenc__EncryptedKeyType;

#define SOAP_TYPE_xenc__ReferenceType (179)
/* xenc:ReferenceType */
struct xenc__ReferenceType
{
	char *URI;	/* required attribute of type xsd:string */
};
typedef struct xenc__ReferenceType xenc__ReferenceType;



#define SOAP_TYPE_xenc__EncryptionPropertiesType (180)
/* xenc:EncryptionPropertiesType */
struct xenc__EncryptionPropertiesType
{
	int __sizeEncryptionProperty;	/* sequence of elements <EncryptionProperty> */
	struct xenc__EncryptionPropertyType *EncryptionProperty;	/* required element of type xenc:EncryptionPropertyType */
	char *Id;	/* optional attribute of type xsd:string */
};
typedef struct xenc__EncryptionPropertiesType xenc__EncryptionPropertiesType;

#define SOAP_TYPE_xenc__EncryptionPropertyType (181)
/* xenc:EncryptionPropertyType */
struct xenc__EncryptionPropertyType
{
	char *Target;	/* optional attribute of type xsd:string */
	char *Id;	/* optional attribute of type xsd:string */
};
typedef struct xenc__EncryptionPropertyType xenc__EncryptionPropertyType;

#define SOAP_TYPE__xenc__ReferenceList (182)
/* xenc:ReferenceList */
struct _xenc__ReferenceList
{
	int __size_ReferenceList;	/* sequence of elements <-union-ReferenceList> */
	struct __xenc__union_ReferenceList *__union_ReferenceList;
};
typedef struct _xenc__ReferenceList _xenc__ReferenceList;

#define SOAP_TYPE___xenc__union_ReferenceList (190)
/* Operation wrapper: */
struct __xenc__union_ReferenceList
{
	struct xenc__ReferenceType *DataReference;	/* optional element of type xenc:ReferenceType */
	struct xenc__ReferenceType *KeyReference;	/* optional element of type xenc:ReferenceType */
};

#define SOAP_TYPE_wsc__SecurityContextTokenType (196)
/* wsc:SecurityContextTokenType */
struct wsc__SecurityContextTokenType
{
	char *wsu__Id;	/* optional attribute of type xsd:string */
	char *Identifier;	/* optional element of type xsd:string */
	char *Instance;	/* optional element of type xsd:string */
};


#define SOAP_TYPE__wsse__Security (204)
/* wsse:Security */
struct _wsse__Security
{
	struct _wsu__Timestamp *wsu__Timestamp;	/* optional element of type wsu:Timestamp */
	struct _wsse__UsernameToken *UsernameToken;	/* optional element of type wsse:UsernameToken */
	struct _wsse__BinarySecurityToken *BinarySecurityToken;	/* optional element of type wsse:BinarySecurityToken */
	struct xenc__EncryptedKeyType *xenc__EncryptedKey;	/* optional element of type xenc:EncryptedKeyType */
	struct _xenc__ReferenceList *xenc__ReferenceList;	/* optional element of type xenc:ReferenceList */
	struct wsc__SecurityContextTokenType *wsc__SecurityContextToken;	/* optional element of type wsc:SecurityContextTokenType */
	struct ds__SignatureType *ds__Signature;	/* optional element of type ds:SignatureType */
	char *SOAP_ENV__actor;	/* optional attribute of type xsd:string */
	char *SOAP_ENV__role;	/* optional attribute of type xsd:string */
};
typedef struct _wsse__Security _wsse__Security;

